package com.example.zxd;

import java.util.Scanner;

/**
 * 忠诚的骑士<p>
 * 描述：
 * 一位忠诚的骑士在战场上立下汗马功劳。
 * 回到王都后，经济拮据的国王便许诺，将金币作为工资，发放给这位骑士，而骑士每天获得的金币会随着时间而增加。
 *<p>
 * 第一天骑士收到一枚金币；之后两天（第二天和第三天），每天收到两枚金币；之后三天（第四、五、六天），每天收到三枚金币；之后四天，每天收到四枚金币，以此类推；这种工资发放模式会一直延续下去，当连续N
 * 天收到N
 * 枚金币后，骑士会在之后的N+1
 * 天，每天收到N+1
 * 枚金币。
 *<p>
 * 请计算前K
 * 天里，骑士一共获得了多少金币。
 *<p>
 * 输入：
 * 输入仅包含一个正整数K
 * ，表示发放金币的天数，满足1≤K≤10000
 * 。
 *<p>
 * 输出：
 * 输出仅包含一个正整数，即骑士收到的金币数。
 *<p>
 * 样例输入：<p>
 * 6<p>
 * 样例输出：<p>
 * 14<p>
 * 样例输入：<p>
 * 1000<p>
 * 样例输出：<p>
 * 29820
 * @author: scarborough
 * @datetime: 2025/3/19 - 18:02
 * @status: AC
 */
public class PROB1011 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int k = sc.nextInt();
        sc.close();

        int sum = 0;
        int day = 0;
        int dayPay = 1;
        while (day != k) {
            int n = dayPay;
            while (n != 0) {
                sum += dayPay;
                day++;
                n--;
                if(day == k) break;
            }
            dayPay++;
        }
        System.out.println(sum);
    }
}
